package org.jeecg.modules.relation.relteachersubject.service;

import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.relation.relclassstudent.vo.RelClassesAndStudentsVO;
import org.jeecg.modules.relation.relteachersubject.entity.RelTeacherSubject;
import org.jeecg.modules.relation.relteachersubject.vo.RelTeacherSubjectVO;
import org.jeecg.modules.subject.entity.CouSubject;
import org.jeecg.modules.teacher.entity.TeaTeacher;

import java.util.Collection;
import java.util.List;

/**
 * @Description: rel_teacher_subject
 * @author: baochangrong
 * @Date: 2022-02-16
 * @Version: V1.0
 */
public interface IRelTeacherSubjectService extends IService<RelTeacherSubject> {

    List<RelTeacherSubjectVO> queryAllTeacher(String tenantId);


    List<RelTeacherSubjectVO> queryAllSubject(String tenantId);

    IPage<RelTeacherSubjectVO> queryVo(Page page, RelTeacherSubject relTeacherSubject);


    List<RelTeacherSubject> queryRelTeacherSubjectByTeacherIds(Collection<String> teaTeacherIds);

    List<RelTeacherSubject> queryRelTeacherSubjectBySubjectIds(Collection<String> subjectIds);

    List<RelTeacherSubjectVO> queryTeacherListBySubject(RelTeacherSubjectVO relTeacherSubjectVO) ;


    /**
     * 用教师档案更新任教科目关系表
     * @param teaTeacherId   老师id
     * @param teacherSubjectIds   老师任教科目ids
     * @return
     */
    boolean batchUpdateDeleteByTeacherId(String teaTeacherId, Collection<String> teacherSubjectIds);
    /**
     * 用科目id更新教师科目关系
     * @param subjectId
     * @param subjectTeacherIds
     * @return
     */
     boolean batchUpdateDeleteBySubjectId(String subjectId,Collection<String> subjectTeacherIds);

}
